package com.system.demo.service;

import com.system.demo.entity.DTO.PaperSearchDTO;
import com.system.demo.entity.DTO.PaperSubmitApplicationDTO;
import com.system.demo.tool.ResponseResult;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.time.LocalDateTime;
import java.util.List;

public interface PaperService {

    ResponseResult<?> PaperSumbit(PaperSubmitApplicationDTO paperSubmitApplicationDTO);

    ResponseResult<?> PaperSearch(PaperSearchDTO paperSearchDTO, int current, int size);

    ResponseResult<?> PaperSearch(int current, int size);


    ResponseResult<?> PaperApplicate(List<Integer> applicationId,String isPass);

    ResponseResult<?> PaperEvidence(Integer applicationId, MultipartFile file, String topic, LocalDateTime awardTime);

    ResponseResult<?> PaperDetermine(List<Integer> paperIdDTO, String isPass, Integer level);

    void PaperExport(PaperSearchDTO paperSearchDTO, HttpServletResponse response) throws IOException;

    ResponseResult<?> PaperDelete(Integer applicationId);

    ResponseResult<?> LevelUpdate(Integer id, String isPass, Integer level);

    ResponseResult<?> NoAward(Integer applicationId);

    ResponseResult<?> PaperUpdate(Integer applicationId, PaperSubmitApplicationDTO paperSubmitApplicationDTO);

    void downloadEvidence(List<Integer> ids, HttpServletResponse response);
}
